ostree_sysroot_init_osname: also create /var/log
authorJonathan Lebon <jlebon@redhat.com>
Tue, 20 Sep 2016 15:45:57 +0000 (11:45 -0400)
committerAtomic Bot <atomic-devel@projectatomic.io>
Tue, 20 Sep 2016 18:03:57 +0000 (18:03 +0000)
/var/log is another one of those core directories that should be made
available and properly labeled during early boot before tmpfiles.d
starts up.

Related: https://bugzilla.redhat.com/show_bug.cgi?id=1265295

Closes: #513
Approved by: cgwalters

src/libostree/ostree-sysroot.c

index de92691a2b520b8d181a7ea20a51cc27b7a568ad..ee87128d10a364e34b0d2392b26b2063b13220f2 100644 (file)
@@ -1487,6 +1487,16 @@ ostree_sysroot_init_osname (OstreeSysroot       *self,
       goto out;
     }
 
+  /* This needs to be available and properly labeled early during the boot
+   * process (before tmpfiles.d kicks in), so that journald can flush logs from
+   * the first boot there. https://bugzilla.redhat.com/show_bug.cgi?id=1265295
+   * */
+  if (mkdirat (dfd, "var/log", 0755) < 0)
+    {
+      glnx_set_prefix_error_from_errno (error, "Creating %s", "var/log");
+      goto out;
+    }
+
   if (symlinkat ("../run", dfd, "var/run") < 0)
     {
       glnx_set_prefix_error_from_errno (error, "Symlinking %s", "var/run");